System and method for product recognition and assignment at an automated storage and retrieval device

ABSTRACT

Systems, methods, and machine-readable media are provided for processing items within an automated storage and retrieval device. A scanned machine-readable identifier associated with an item is received at an automated storage and retrieval device. A determination is made whether the machine-readable identifier that was scanned is a container identification (ID). The machine-readable identifier is identified based on pre-defined criteria when the machine-readable identifier is determined not to be a container ID. The machine-readable identifier is mapped to an existing order using stored order information. A container ID is created by the fulfillment system and passed back to the automated storage and retrieval device. The item is stored in the automated storage and retrieval device using the created container ID.

CROSS-REFERENCE TO RELATED PATENT APPLICATIONS

This application is a continuation of U.S. Pat. No. 16,510,114, filed Jul. 12, 2019, which claims priority to U.S. App. No. 62/697,094, filed on Jul. 12, 2018, the content of each of which is hereby incorporated by reference in its entirety.

BACKGROUND

In conventional retail environments when processing an order, a single identifier (ID), may be used for an item in the order. The ID may be used to identify the item during different stages of processing of the order.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate one or more embodiments of the invention and, together with the description, help to explain the invention. The drawings are not necessarily to scale, or inclusive of all elements of a system, emphasis instead generally being placed upon illustrating the concepts, structures, and techniques sought to be protected herein. In the drawings:

FIG. 1 is a block diagram for a product recognition and assignment system, according to an example embodiment.

FIG. 2 is a flowchart illustrating an exemplary method for product recognition and assignment according to an example embodiment.

FIG. 3 is a diagram of an exemplary network environment suitable for a product recognition and assignment system of exemplary embodiments.

FIG. 4 is a block diagram of an exemplary computing device that may be used to implement exemplary embodiments described herein.

DETAILED DESCRIPTION

Conventionally some items may be received at a facility with machine-readable identifiers that cannot be understood by an automated storage and retrieval device for the facility. Embodiments improve the ability of the automated storage and retrieval device to recognize multiple types of machine-readable identifiers, map them to existing orders tracked by a fulfillment system, and assign a new ID to enable future location tracking of the item.

In some facilities, items associated with an order may be tracked by an order fulfillment system on a container basis. A container can be a tote, bin, shopping bag, shopping cart, or the like, and may include one or more items. The containers can be different colors depending on the temperature required for storage of items to be picked. Items come in various shapes and sizes, and a large item may serve as its own container. For example, a container ID label may be placed on box of an item (e.g., a television).

In some instances, the container may be a shopping bag. Items such as a toothbrush, toothpaste, and shampoo may use a shopping bag for the container and a container label may be applied on the bag for that order. With this approach, every item of an order may therefore tracked by container and container ID. Each container label is a unique ID. An order can have multiple container IDs associated with it. For example, a TV may get a first ID, and a shopping bag may get a different ID, even though they are part of the same order.

Embodiments of the present invention provide a mechanism for product recognition and assignment at an automated storage and retrieval device. Referring to FIG. 1, the system 100 includes an automated storage and retrieval device 102, a scanning device 104 in communication with the automated storage and retrieval device, and a computing device 110 in communication with the scanning device and the automated storage and retrieval device. In some embodiments, the automated storage and retrieval device, may be, but is not limited to, a tower apparatus equipped with automated storage and retrieval mechanisms. In other embodiments, the automated storage and retrieval device may be a drone, Autonomous Guided Vehicle (AGV) or other robotic device equipped with storage space and automated storage and retrieval mechanisms. In one embodiment, the scanning device 104 may be integrated into the automated storage and retrieval device 102. The computing system is configured to execute a recognition module that receives a scanned machine-readable identifier associated with an item received at the automated storage and retrieval device. For example, a facility may receive a shipped item that includes a machine-readable identifier and deliver the item to the automated storage and retrieval device. The recognition module determines if the machine-readable identifier that was scanned is an identification (ID) (referred to herein as a “container ID”) recognized by the system that identifies an item for which information is already stored by the system. When the machine-readable identifier is determined not to be a container ID that is recognized by the system the recognition module identifies the machine-readable identifier based on pre-defined criteria and maps the machine-readable identifier to an existing user order using order information for the facility previously stored in one or more databases. For example, the machine-readable identifier may instead be a tracking number or Advanced Shipping Notice (ASN) number that is recognizable by the system and which is indexed to an existing order. Once the item is identified, it can be mapped to an existing order whose details were previously saved by the system. Following identification, the recognition module creates a container ID for the item to allow future tracking of the item. The item is stored in the automated storage and retrieval device using the created container ID that identifies the item and its location within the automated storage and retrieval device.

In one embodiment, items are taken directly off a delivery vehicle and routed directly to an automated storage and retrieval device, such as but not limited to a tower apparatus, without going through a traditional receiving process involving human inspection and the manual printing of container IDs for each item. For example, embodiments allow the scanner in the automated storage and retrieval device to read and process multiple types of machine-readable identifiers including a container ID, a tracking number, or an ASN. It will be appreciated that in other embodiments additional types of machine-readable identifiers not specifically listed herein may be read in the absence of a container ID by the automated storage and retrieval device so as to allow the mapping of the item to existing order information and the assignment of a container ID by the automated storage and retrieval device. It should be appreciated that when an item arrives at the automated storage and retrieval device and includes a container ID that is read, nothing is changed, and the processing of the item continues with the item's storage in the automated storage and retrieval device and the updating of its location in the system. The tower or other automated storage and retrieval device understands where the container ID is held, and is available for retrieval when a user arrives for pickup.

FIG. 2 is a flowchart illustrating an exemplary method 200 for product recognition and assignment. A scanned machine-readable identifier associated with an item is received at an automated storage and retrieval device (step 202). The item may be from another retail facility, a vendor, or the like. The item may have one or more barcodes on it.

A determination is made regarding whether the machine-readable identifier that was read is a container ID (step 204). When the machine-readable identifier is a container ID, the item is processed using the container ID.

When the machine-readable identifier is not a container ID, the machine readable-identifier is identified based on pre-defined criteria (step 206). For example, the machine-readable identifier may be one of an ASN number or a tracking number whose format the recognition module has been programmed to recognize.

The machine-readable identifier is mapped to an existing order using stored number information (step 208). A container ID number is created by an order fulfillment system and passed to the automated storage and retrieval device (step 210).

The item is stored in the automated storage and retrieval device (step 210). Once the order is completed (all items have been picked), the customer is notified that the order is ready to be picked up. The customer may provide credentials to the tower and is able to access the ordered items.

FIG. 3 illustrates a network diagram depicting a system 300 for implementing the product recognition and assignment system, according to an example embodiment. The system 300 can include a network 305, multiple client devices, for example, client device 310, client device 320, a server 330, and database(s) 340. Each of the client devices 310, 320, server 330, and database(s) 340 is in communication with the network 305.

In an example embodiment, one or more portions of network 305 may be an ad hoc network, an intranet, an extranet, a virtual private network (VPN), a local area network (LAN), a wireless LAN (WLAN), a wide area network (WAN), a wireless wide area network (WWAN), a metropolitan area network (MAN), a portion of the Internet, a portion of the Public Switched Telephone Network (PSTN), a cellular telephone network, a wireless network, a WiFi network, a WiMax network, another type of network, or a combination of two or more such networks.

The client devices 310, 320 may comprise, but are not limited to, mobile devices, handheld devices, wireless devices, portable devices, wearable computers, cellular or mobile phones, portable digital assistants (PDAs), smart phones, smart watches, tablets, ultrabooks, netbooks, laptops, desktops, multi-processor systems, microprocessor-based or programmable consumer electronics, and the like. Each of client devices 310, 320 may connect to network 305 via a wired or wireless connection. In an example embodiment, the client devices 310, 320 may perform one or more of the functionalities of the product recognition and assignment system described herein, or transmit data or signals to the product recognition and assignment system described herein. The client device 310, 320 can include one or more components of computing device 400 of FIG. 4.

In an example embodiment, the targeted advertising system 100 may be included at least in part on the client device 310, 320, and the client device 310, 320 performs one or more of the functionalities of the system described herein. In an example embodiment, the product recognition and assignment system may be included at least in part on the server 330, and the server 330 performs one or more of the functionalities of the product recognition and assignment system described herein.

The database(s) 340 comprise one or more storage devices for storing data and/or instructions (or code) for use by the server 330 and/or the client devices 310, 320. Each of the database(s) 340 and the server 330 is connected to the network 305 via a wired connection. Alternatively, one or more of the database(s) 340 and server 330 may be connected to the network 305 via a wireless connection. The server 330 comprises one or more computers or processors configured to communicate with the client devices 310, 320 via network 305. The server 330 can include one or more components of device 400 of FIG. 4. Server 330 hosts one or more software systems, applications or websites, including one or more components of the product recognition and assignment system 100 described herein and/or facilitates access to the content of database(s) 340.

In an example embodiment, the server 330 also includes various software services that facilitate the functionalities of the product recognition and assignment system. Database(s) 340 and server 330 may be located at one or more geographically distributed locations from each other or from client devices 310, 320. Alternatively, database(s) 340, 345 may be included within server 330. Server 330 includes software and applications for application services 332, security services 334, external services 336, and retail services 338.

FIG. 4 is a block diagram of an exemplary computing device 400 that can be used to perform one or more steps of the methods provided by exemplary embodiments. For example, computing device 400 may be the client device 310, 320 and the server 330 as described in FIG. 3. The computing device 400 includes one or more non-transitory computer-readable media for storing one or more computer-executable instructions or software for implementing exemplary embodiments. The non-transitory computer-readable media can include, but are not limited to, one or more types of hardware memory, non-transitory tangible media (for example, one or more magnetic storage disks, one or more optical disks, one or more USB flashdrives), and the like. For example, memory 406 included in the computing device 400 can store computer-readable and computer-executable instructions or software for implementing exemplary embodiments. The computing device 400 also includes processor 402 and associated core 404, and optionally, one or more additional processor(s) 402′ and associated core(s) 404′ (for example, in the case of computer systems having multiple processors/cores), for executing computer-readable and computer-executable instructions or software stored in the memory 406 and other programs for controlling system hardware. Processor 402 and processor(s) 402′ can each be a single core processor or multiple core (404 and 404′) processor.

Virtualization can be employed in the computing device 400 so that infrastructure and resources in the computing device can be shared dynamically. A virtual machine 414 can be provided to handle a process running on multiple processors so that the process appears to be using only one computing resource rather than multiple computing resources. Multiple virtual machines can also be used with one processor.

Memory 406 can include a computer system memory or random access memory, such as DRAM, SRAM, EDO RAM, and the like. Memory 406 can include other types of memory as well, or combinations thereof. An individual can interact with the computing device 400 through a visual display device 418, such as a touch screen display or computer monitor, which can display one or more user interfaces 422 for receiving data from the individual (e.g., order data and travel data). The visual display device 418 can also display other aspects, elements and/or information or data associated with exemplary embodiments. The computing device 400 can include other I/O devices for receiving input from a individual, for example, a keyboard or another suitable multi-point touch interface 408, a pointing device 410 (e.g., a pen, stylus, mouse, or trackpad). The keyboard 408 and the pointing device 410 can be coupled to the visual display device 418. The computing device 400 can include other suitable conventional I/O peripherals.

The computing device 400 can also include one or more storage devices 424, such as a hard-drive, CD-ROM, or other computer readable media, for storing data and computer-readable instructions and/or software, such as one or more modules of the system 100 shown in FIG. 1 that implements exemplary embodiments of the product recognition and assignment system as described herein, or portions thereof, which can be executed to generate user interface 422 on display 418. Exemplary storage device 424 can also store one or more databases 426 for storing suitable information required to implement exemplary embodiments. The databases can be updated by an individual or automatically at a suitable time to add, delete, or update one or more items in the databases. Exemplary storage device 424 can store one or more databases 426 for storing provisioned data, and other data/information used to implement exemplary embodiments of the systems and methods described herein.

The computing device 400 can include a network interface 412 configured to interface via one or more network devices 420 with one or more networks, for example, Local Area Network (LAN), Wide Area Network (WAN) or the Internet through a variety of connections including, but not limited to, standard telephone lines, LAN or WAN links (for example, 802.11, T1, T3, 46 kb, X.25), broadband connections (for example, ISDN, Frame Relay, ATM), wireless connections, controller area network (CAN), or some combination of any or all of the above. The network interface 412 can include a built-in network adapter, network interface card, PCMCIA network card, card bus network adapter, wireless network adapter, USB network adapter, modem or another device suitable for interfacing the computing device 400 to a type of network capable of communication and performing the operations described herein. Moreover, the computing device 400 can be a computer system, such as a workstation, desktop computer, server, laptop, handheld computer, tablet computer (e.g., the iPad® tablet computer), mobile computing or communication device (e.g., the iPhone® communication device), or other form of computing or telecommunications device that is capable of communication and that has sufficient processor power and memory capacity to perform the operations described herein.

The computing device 400 can run an operating system 416, such as versions of the Microsoft® Windows® operating systems, the different releases of the Unix and Linux operating systems, a version of the MacOS® for Macintosh computers, an embedded operating system, a real-time operating system, an open source operating system, a proprietary operating system, an operating systems for mobile computing devices, or another operating system capable of running on the computing device and performing the operations described herein. In exemplary embodiments, the operating system 416 can be run in native mode or emulated mode. In an exemplary embodiment, the operating system 416 can be run on one or more cloud machine instances.

The description is presented to enable a person skilled in the art to create and use a computer system configuration and related method and systems for product recognition and assignment. Various modifications to the example embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments and applications without departing from the spirit and scope of the invention. Moreover, in the following description, numerous details are set forth for the purpose of explanation. However, one of ordinary skill in the art will realize that the invention may be practiced without the use of these specific details. In other instances, well-known structures and processes are shown in block diagram form in order not to obscure the description of the invention with unnecessary detail. Thus, the present disclosure is not intended to be limited to the embodiments shown, but is to be accorded the widest scope consistent with the principles and features disclosed herein.

In describing exemplary embodiments, specific terminology is used for the sake of clarity. For purposes of description, each specific term is intended to at least include all technical and functional equivalents that operate in a similar manner to accomplish a similar purpose. Additionally, in some instances where a particular exemplary embodiment includes a plurality of system elements, device components or method steps, those elements, components or steps can be replaced with a single element, component, or step. Likewise, a single element, component, or step can be replaced with a plurality of elements, components, or steps that serve the same purpose. Moreover, while exemplary embodiments have been shown and described with references to particular embodiments thereof, those of ordinary skill in the art will understand that various substitutions and alterations in form and detail can be made therein without departing from the scope of the invention. Further still, other aspects, functions, and advantages are also within the scope of the invention.

Exemplary flowcharts have been provided herein for illustrative purposes and are non-limiting examples of methods. One of ordinary skill in the art will recognize that exemplary methods can include more or fewer steps than those illustrated in the exemplary flowcharts, and that the steps in the exemplary flowcharts can be performed in a different order than the order shown in the illustrative flowcharts.

Having described certain embodiments, which serve to illustrate various concepts, structures, and techniques sought to be protected herein, it will be apparent to those of ordinary skill in the art that other embodiments incorporating these concepts, structures, and techniques may be used. Elements of different embodiments described hereinabove may be combined to form other embodiments not specifically set forth above and, further, elements described in the context of a single embodiment may be provided separately or in any suitable sub-combination. Accordingly, it is submitted that the scope of protection sought herein should not be limited to the described embodiments but rather should be limited only by the spirit and scope of the following claims. 

What is claimed is:
 1. A product identifier recognition and assignment system, the system comprising: an automated storage and retrieval device; a scanning device in communication with the automated storage and retrieval device; and a computing device in communication with the scanning device and the automated storage and retrieval device, the computing device configured to execute a recognition module, wherein the recognition module, when executed: receives a scanned machine-readable identifier associated with an item received at the automated storage and retrieval device; determines if the scanned machine-readable identifier is a container identification (ID) recognized by the system as being already stored by the system to identify the item; and when the scanned machine-readable identifier is determined not to be a container ID recognized by the system as being already stored by the system to identify the item: creates a container ID for the item to be tracked by a fulfillment system, the created container ID identifying both the item and the storage location of the item within the automated storage and retrieval device; and stores the item in the automated storage and retrieval device using the created container ID.
 2. The system of claim 1 wherein the scanner is integrated into the automated storage and retrieval device.
 3. The system of claim 2 wherein the automated storage and retrieval device is a tower.
 4. The system of claim 1 wherein when the machine-readable identifier is one of an Advanced Shipping Notice (ASN) number and a tracking number.
 5. The system of claim 1 wherein the automated storage and retrieval device provides access to the item by a customer.
 6. The system of claim 5 wherein a user provides credentials to the automated storage and retrieval device to initiate retrieval of the item.
 7. The system of claim 1 wherein the automated storage and retrieval device is one of a drone and an Autonomous Guided Vehicle (AGV).
 8. A computer-implemented method for product identifier recognition and assignment, the method comprising: receiving a scanned machine-readable identifier associated with an item received at an automated storage and retrieval device; determining that the scanned machine-readable identifier is not a container identification (ID) recognized by the system as being already stored by the system to identify the item; and when the scanned machine-readable identifier is determined not to be a container ID recognized by the system as being already stored by the system to identify the item: creating a container ID for the item to be tracked by a fulfillment system, the created container ID identifying both the item and a storage location of the item within the automated storage and retrieval device; and storing the item in the automated storage and retrieval device using the created container ID.
 9. The method of claim 8 wherein the scanner is integrated into the automated storage and retrieval device.
 10. The method of claim 9 wherein the automated storage and retrieval device is a tower.
 11. The method of claim 8 wherein when the machine-readable identifier is one of an Advanced Shipping Notice (ASN) number and a tracking number.
 12. The method of claim 8 further comprising providing access by the automated storage and retrieval device to the item by a customer.
 13. The method of claim 12 further comprising a user providing credentials to the automated storage and retrieval device to initiate retrieval of the item.
 14. The method of claim 8 wherein the automated storage and retrieval device is one of a drone and an Autonomous Guided Vehicle (AGV).
 15. A non-transitory machine-readable medium storing instructions executable by a computing device, wherein execution of the instructions causes the computing device to implement a method for product identifier recognition and assignment, the method comprising: receiving a scanned machine-readable identifier associated with an item received at an automated storage and retrieval device; determining if the scanned machine-readable identifier is a container identification (ID) recognized by the system as being already stored by the system to identify the item; and when the scanned machine-readable identifier is determined not to be a container ID recognized by the system as being already stored by the system to identify the item: creating a container ID for the item to be tracked by a fulfillment system, the created container ID identifying both the item and a storage location of the item within the automated storage and retrieval device; and storing the item in the automated storage and retrieval device using the created container ID.
 16. The medium of claim 15 further comprising instructions wherein the automated storage and retrieval device is a tower.
 17. The medium of claim 15 further comprising instructions wherein when the machine-readable identifier is one of an Advanced Shipping Notice (ASN) number and a tracking number.
 18. The medium of claim 15 further comprising instructions providing access by the automated storage and retrieval device to the item by a customer.
 19. The medium of claim 18 further comprising instructions for verifying credentials to the automated storage and retrieval device to initiate retrieval of the item.
 20. The medium of claim 15 further comprising instructions wherein the automated storage and retrieval device is one of a drone and an Autonomous Guided Vehicle (AGV). 